﻿#ifndef W_VoltageMonitor_H
#define W_VoltageMonitor_H
#include "stdafx1.h"

#include "ui_W_VoltageMonitor.h"
#include "C_VoltageMonitor.h"
#include "Source/Utils/WidgetForm/DialogBase/W_DialogBase.h"

/*
-----==========================================================-----
		类：		电压监视器 编辑窗口.h
		作者：		drill_up
		所属模块：	监视器模块
		功能：		电压监视器数据类的编辑窗口。
-----==========================================================-----
*/

class W_VoltageMonitor : public W_DialogBase
{
	Q_OBJECT

	public:
		W_VoltageMonitor(QWidget *parent);
		~W_VoltageMonitor();
		
	//-----------------------------------
	//----控件
	public:
										//控件 - 获取自动命名
		QString getAutoName();
		
	//-----------------------------------
	//----端口占位
	public:
		


	//-----------------------------------
	//----模型
	protected:
		QString m_model_id;
		bool m_slotBlock_model;
	public:
										//模型 - 刷新模型
		void refreshModel();
										//模型 - 删除模型
		void clearModel();


	//-----------------------------------
	//----窗口
	public:
		bool isAddMode;
		C_VoltageMonitor local_VoltageMonitor;
	public:
										//窗口 - 设置数据（添加）
		void setDataInAddMode();
										//窗口 - 设置数据（修改）
		void setDataInModifyMode(C_VoltageMonitor p);
										//窗口 - 设置两点的数据
		void setDataPoint(QList<double> p1, QList<double> p2);
										//窗口 - 取出数据
		C_VoltageMonitor getData();
										//窗口 - 本地数据 -> ui数据
		void putDataToUi();							
										//窗口 - ui数据 -> 本地数据
		void putUiToData();

	public slots:
										//窗口 - 提交数据（校验）
		void base_acceptData() override;
										//窗口 - 取消数据
		void base_rejectData() override;
										//窗口 - 关闭事件
		void closeEvent(QCloseEvent *e) override;
	signals:
		void acceptDataSignal(bool isAddMode, C_VoltageMonitor data);

	//-----------------------------------
	//----UI
	public:
		Ui::W_VoltageMonitor *getUI();
	private:
		Ui::W_VoltageMonitor ui;
};

#endif // W_VoltageMonitor_H
